package com.ruoyi.web.pojo.request.incomeexpense;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.math.BigDecimal;
import java.util.Date;

/**
 * 支入支出对象 tt_income_expense
 * 
 * @author zq
 * @date 2024-01-09
 */
@Api("wx支入支出分页请求")
@Data
public class IEDetailsReq extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 支入支出分类 */
    @Excel(name = "类型（0 收入 1 支出）")
    @ApiModelProperty("类型（0 收入 1 支出）")
    private String type;

    /** 支入支出分类 */
    @Excel(name = "一级分类")
    @ApiModelProperty("一级分类（不传就是全部）")
    private String typeId;


    private Long userId;


    /** 名称 */
    @ApiModelProperty(value = "名称")
    @Excel(name = "名称")
    private String name;



    @ApiModelProperty("搜索使用：开始时间 yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date startTime;

    @ApiModelProperty("搜索使用：结束时间 yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date endTime;

    @ApiModelProperty("搜索使用：开始金额")
    private  BigDecimal startMoney;
    @ApiModelProperty("搜索使用：结束金额")
    private BigDecimal endMoney;

    @ApiModelProperty("邮箱，小程序用")
    private String email;

    public IEPageReq toPoVo() {
        IEPageReq req = new IEPageReq();
        String[] types = new String[]{this.typeId};
        req.setTypeIds(types);
        req.setName(this.name);
        req.setStartTime(this.startTime);
        req.setEndTime(this.endTime);
        req.setStartMoney(this.startMoney);
        req.setEndMoney(this.endMoney);
        return req;
    }
}
